package com.haier.service;

import java.util.List;
import java.util.Map;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.haier.dto.HpAreaGoTrackDto;
import com.haier.entity.HpAreaGoTrack;
import com.haier.vo.HpAreaGoTrackVo;
import org.apache.poi.xssf.streaming.SXSSFWorkbook;

/**
 * <p>
 * 通行轨迹 服务类
 * </p>
 *
 * @author luanxuecheng
 * @since 2020-07-01
 */
public interface IHpAreaGoTrackService extends IService<HpAreaGoTrack> {

	@SuppressWarnings("rawtypes")
	IPage page(HpAreaGoTrackDto dto);

	@SuppressWarnings("rawtypes")
	IPage pageHistory(HpAreaGoTrackDto dto);

	List<Map<String, Object>> reportHoursCount(HpAreaGoTrackDto dto);

	List<Map<String, Object>> reportDayCount(HpAreaGoTrackDto dto);

	List<Map<String, Object>> reportMonthCount(HpAreaGoTrackDto dto);

	List<Map<String, Object>> reportTotayHoursCount(HpAreaGoTrackDto dto);

	List<Map<String, Object>> reportWeekDayCount(HpAreaGoTrackDto dto);

	/**
	 * 轨迹报表导出
	 * @param dto
	 * @return
	 */
    SXSSFWorkbook reportTrack(HpAreaGoTrackDto dto);

	/**
	 * 查询轨迹列表
	 * @param dto
	 * @return
	 */
	List<HpAreaGoTrackVo> getListReport(HpAreaGoTrackDto dto);
}
